package com.gopay.common.security.validcode.service;

import java.util.Map;

import com.gopay.common.constants.validcode.CodeType;
import com.gopay.common.domain.vs.VsValidCodeDtl;

/**
 * 验证码接口
 * 
 * @ValidCodeService.java
 * @author yaobo
 * @2013-5-15 下午03:36:56 www.gopay.com.cn Inc.All rights reserved.
 */
public interface ValidCodeService {

    /**
     * 生成验证码
     * 
     * @param type
     *            验证类型
     * @param voID
     *            业务编号
     * @return
     */
    public VsValidCodeDtl generate(CodeType type, String voID);

    /**
     * 验证验证码
     * 
     * @param type
     *            验证类型
     * @param voID
     *            业务编号(如：订单号，USERID等)
     * @param code
     *            验证码
     * @return
     */
    public boolean valid(CodeType type, String voID, String code);
    
    
    /**
     * 
     * @param type
     * @param voID
     * @param code
     * @param timeOut
     * @return
     */
    public boolean valid(CodeType type, String voID, String code,String timeOut);
}
